"""
 要求：通过类型转换函数，进行如下转换
"""
print("---------------")
print("------- int类型转换 --------")
int_str = 111
int_int = int(111)
print(f"数据：【{int_str}】 数据类型：【{type(int_int)}】")


print("------- float类型转换 --------")
float_str = '2.23'
float_float = float(float_str)
print(f"数据：【{float_str}】 数据类型：【{type(float_float)}】")

print("------- bool类型转换 : 注意使用bool()好像是转不了的,使用eval（） --------")
bool_str = 'True'
bool_bool = eval(bool_str)
print(f"数据：【{bool_bool}】 数据类型：【{type(bool_bool)}】")

print("------- 列表str->list类型转换:eval() --------")
list_str = '[1,2,3,4]'
list_list = eval(list_str)
print(f"数据：【{list_list}】 数据类型：【{type(list_list)}】")

print("------- 序列（list/tuple/set/dic）->tuple  --------")
tuple_tuple = tuple(list_list)
print(f"将list：{list_list} 转为tuple")
print(f"数据：【{tuple_tuple}】 数据类型：【{type(tuple_tuple)}】")

set_set = {5,3,6,1}
print(f"将set：{set_set} 转为tuple")
tuple2  = tuple(set_set)
print(f"数据：【{tuple2}】 数据类型：【{type(tuple2)}】")

dict_dict = {
    'name':'tom',
    'age':10
}
print(f"将set：{dict_dict} 转为tuple,结果发现只保留了键的值")
tuple3  = tuple(dict_dict)
print(f"数据：【{tuple3}】 数据类型：【{type(tuple3)}】")

print("------- 序列（list/tuple/set/dic）->list  --------")
print(f"将set：{set_set} 转为list")
list1 = list(set_set)
print(f"数据：【{list1}】 数据类型：【{type(list1)}】")

print(f"将tuple：{tuple_tuple} 转为list")
list2 = list(tuple_tuple)
print(f"数据：【{list2}】 数据类型：【{type(list2)}】")

print(f"将set集合：{set_set} 转为list")
list3 = list(set_set)
print(f"数据：【{list3}】 数据类型：【{type(list3)}】")